#pragma once
#include <memory>
#include "RootView.h"
#include "Animation.h"
#include "Button.h"


class CalcAnimation;

class MainView :
	public RootView, public AnimationDelegate, public ButtonListener
{
public:
	MainView();
	virtual ~MainView();

	virtual bool init();
	virtual bool deinit();
protected:
	// AnimationDelegate
	virtual void animateStarted(Animation* animation);

	virtual void animateCompleted(Animation* animation);

	virtual void animateStep(Animation* animation);

	virtual void animateCanceled(Animation* animation);

	virtual void ButtonPressed(Button* sender, MouseEvent& event);


private:
	std::shared_ptr<CalcAnimation> animation_;
};

